package n72_final修饰符原理;

/**
 * @author fu
 * @date 2022-02-20 20:53
 * 概要：
 * ---------------------------------------------------------------
 * |                                                              |
 * |            设置 final的原理       |
 * |                                                             |
 * |=============================================================
 *
 * 写屏障：
 * 1. 保证 [写屏障位置] 之前指令 不会被重排序到 [写屏障位置] 后面去
 *
 * 2. [写屏障位置] 之前所有赋值操作 都会被同步到主存 被其他线程可见
 */
public class T1_final修饰符原理 {

    // 多线程 访问时： 可能会读到 a=0的情况
    int a1 = 20;
    // 多线程 访问时； 读到的 都是20
    final int a2 = 20;


}


